package interfazUsuario.entorno;

import java.io.IOException;

import interfazUsuario.medidores.SensorHumedadIU;
import interfazUsuario.medidores.CronometroLuzIU;
import interfazUsuario.medidores.TermometroIU;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

import cultivameCore.entorno.Entorno;
import cultivameCore.motor.Refrescable;

public class EntornoIU extends Canvas implements Refrescable {
	
	/**
	 * 
	 */
	Display display;
	Entorno entorno=null;
	TermometroIU termo=null;
	CronometroLuzIU termoCir=null;
	SensorHumedadIU humed=null;
	
	public EntornoIU(Display display){
		//setMinimumSize(new Dimension(450, 300));
		this.display=display;
		try {
			Image img_tmp=Image.createImage("/interfazUsuario/imagenes/medidores/medidorTmp.png");
			Image img_hum=Image.createImage("/interfazUsuario/imagenes/medidores/medidorHum.png");
			termo=new TermometroIU(0, 0,entorno/*,new Color(168, 47, 0)*/,img_tmp);				
			humed=new SensorHumedadIU(50, 0,entorno/*,new Color(25, 94, 249)*/,img_hum);
			termoCir=new CronometroLuzIU(100, 10, entorno);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}		
	}
	
	public Entorno getEntorno() {
		return entorno;
	}

	public void setEntorno(Entorno entorno) {
		this.entorno = entorno;
	}

	public TermometroIU getTermo() {
		return termo;
	}

	public void setTermo(TermometroIU termo) {
		this.termo = termo;
	}

	public CronometroLuzIU getTermoCir() {
		return termoCir;
	}

	public void setTermoCir(CronometroLuzIU termoCir) {
		this.termoCir = termoCir;
	}

	public SensorHumedadIU getHumed() {
		return humed;
	}

	public void setHumed(SensorHumedadIU humed) {
		this.humed = humed;
	}
	
	public void paint(Graphics g){
		g.setColor(0,0,0);
		g.drawRect(0, 0, getWidth(), getHeight());
		termo.drawme(g);
		humed.drawme(g);
		termoCir.drawme(g);
	}
	
	public void actualizar(int ms) {
		// TODO Auto-generated method stub
		termo.actualizar(ms);
		humed.actualizar(ms);
		termoCir.actualizar(ms);
		
		repaint();
	}

}
